﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.ComponentModel;

namespace BattleforgeAssault
{
    public class GameObject : INotifyPropertyChanged
    {
        public event PropertyChangedEventHandler PropertyChanged;
        protected void RaisePropertyChanged(string property)
        {
            var handler = PropertyChanged; if (handler != null)
            {
                if (Deployment.Current.Dispatcher.CheckAccess()) { handler(this, new PropertyChangedEventArgs(property)); }
                else { Deployment.Current.Dispatcher.BeginInvoke(() => { handler(this, new PropertyChangedEventArgs(property)); }); }
            }
        }
    }
}
